The open source movement is having an increasing influence on the software industry and all software development. This movement consists of individual programmers and companies that create software and release the original source code to the public without charge. This source code is released to allow compilation for running on all kinds of computer systems. The software often includes common applications such as word processors and spreadsheets, and drivers for use with specific hardware in a system.
The major driving force behind the open source movement is specifically the LINUX operating system (“LINUX”). This open source operating system is growing in influence as it is being deployed by many different individuals and companies. Along with this growing acceptance, in order to compete with commercial operating systems such as WINDOWS from MICROSOFT, the complexity of LINUX is also growing to allow it to run on larger systems and to control complex multitasking systems. This increasing complexity inevitably results in decreasing reliability, larger memory requirements, and a slower response time to critical situations (i.e., latency time).
While this growth in complexity is beneficial for desktop systems and web hosting systems, it is detrimental for systems that require high reliability, small memory, and short latency. Critical systems such as medical equipment require high reliability. Systems on a chip (SOCs) require small memory footprints. Real-time embedded systems require short latency. While a number of vendors are now offering versions of “embedded LINUX,” these LINUX systems are all distinct, semi-proprietary operating systems that still have large memory requirements, long latency times, and inadequate reliability. Embedded system designers need the open source drivers and applications to run on an operating system that is smaller, faster, and more reliable than the existing off-the-shelf operating systems.